$(function () {
    getArticle();
    // 获取文章列表的函数
    function getArticle() {
        $.ajax({
            method: 'GET',
            url: '/my/article/cates',
            success: function (res) {
                if (res.status !== 0) {
                    return layui.layer.msg('获取文章列表失败！')
                }
                var tableValue = template('tpe_table', res);
                $('tbody').html(tableValue)
            }
        })
    }
    // 点击添加分类按钮弹出提示框
    var indexadd = null;
    $('#btnAddCate').on('click', function () {
        indexadd = layui.layer.open({
            type: 1,
            area: ['500px', '250px'],
            title: '添加文章分类',
            content: $('#tpe_add').html()
        });
    })
    // 通过代理事件 实现内容的添加
    $('body').on('submit', '#form_add', function (e) {
        e.preventDefault()
        $.ajax({
            method: 'POST',
            url: '/my/article/addcates',
            data: $(this).serialize(),
            success: function (e) {
                if (e.status !== 0) {
                    return layui.layer.msg('添加失败')
                }
                getArticle()
                // 关闭弹出层
                layui.layer.close(indexadd)
            }
        })
    })
    // 点击编辑按钮弹出提示框 也需要通过代理方式添加事件
    var indexedit = null;
    $('tbody').on('click', '#btn_edit', function () {
        indexedit = layui.layer.open({
            type: 1,
            area: ['500px', '250px'],
            title: '添加文章分类',
            content: $('#tpe_edit').html()
        })
        // 根据自定义属性拿到元素的id值
        var id = $(this).attr('data-id');
        // 发起ajax请求，根据id获取相应元素的数据
        $.ajax({
            method: 'GET',
            url: '/my/article/cates/' + id,
            success: function (res) {
                // 通过layui的form.val方法为表单快速填充数据
                layui.form.val('form_edit', res.data)
            }
        })
    })
    // 通过发起请求更新表单内的数据 代理方式绑定事件
    $('body').on('submit', '#form_edit', function (e) {
        e.preventDefault()
        $.ajax({
            method: 'POST',
            url: '/my/article/updatecate',
            data: $(this).serialize(),
            success: function (res) {
                if (res.status !== 0) {
                    return layui.layer.msg('更新数据失败')
                }
                layui.layer.msg('更新数据成功')
                layui.layer.close(indexedit)
                // 调用函数重新渲染列表内数据
                getArticle()
            }
        })
    })
    // 删除文章分类功能 代理
    $('tbody').on('click', '.btn_delete', function () {
        // 点击之后拿到id值
        var id = $(this).attr('data-id')
        layui.layer.confirm('确认删除?', { icon: 3, title: '提示' }, function (index) {
            $.ajax({
                method: 'GET',
                url: '/my/article/deletecate/' + id,
                success: function (res) {
                    if (res.status !== 0) {
                        layui.layer.msg('删除失败')
                    }
                    layui.layer.msg('删除成功')
                    layui.layer.close(index)
                    getArticle()
                }
            })  
        })
    })
})
